package com.wms.common.utils;

import com.github.pagehelper.PageHelper;
import com.wms.common.core.page.PageDomain;
import com.wms.common.core.page.TableSupport;
import com.wms.common.utils.sql.SqlUtils;

/**
 * 分页工具类
 */
public class PageUtils extends PageHelper {
    /**
     * 根据请求参数设置分页信息
     */
    public static void startPage() {
//        获取分页参数对象
        PageDomain pageDomain = TableSupport.buildPageRequest();
//        当前页码
        Integer pageNum = pageDomain.getPageNum();
//        每页显示条数
        Integer pageSize = pageDomain.getPageSize();
//        排序字段
        String orderBy = SqlUtils.escapeOrderBySql(pageDomain.getOrderBy());
//        是否启用合理化分页
        Boolean reasonable = pageDomain.getReasonable();
        PageHelper.startPage(pageNum, pageSize, orderBy).setReasonable(reasonable);
    }

    /**
     * 清理分页的线程变量,防止分页参数对后续查询产生影响
     */
    public static void clearPage() {
        PageHelper.clearPage();
    }
}
